[MDM-BACKEND-013] Создать метод POST /api/products

Разработка эндпоинта инициализации синтеза Master Data с паттерном Async ACK

Author

MDM Domain Lead

Published

July 13, 2026

NoteКраткая карточка задачи

  • Инструкция по шагам:
    1. На Шаге 1: Реализовать прием запроса от скрипта наполнения Master Data или администратора. Обязательно сгенерировать сквозной X-Request-ID (trace_id).
    2. Разработать Pydantic-валидацию входящего тела (поля: name типа string, app_lang типа string с дефолтом ru).
    3. На Шаге 2: Открыть транзакцию и выполнить инструкцию INSERT INTO fridge_db.food_elements (name, status, created_at) VALUES (:name, 'PENDING', NOW()) RETURNING id. Принудительная запись в fridge_db обусловлена нахождением сущностей food_elements внутри контура INVENTORY согласно манифесту.
    4. На Шаге 3: Не дожидаясь генерации ИИ, немедленно вернуть клиенту статус 202 Accepted с UUID созданной записи для разблокировки вызывающего потока.
    5. На Шаге 4: Сразу после ответа отправить в Kafka-топик bpds.mdm.in.product.process задачу на генерацию карточки. В Payload упаковать product_id, product_name, app_lang и trace_id.